home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 1997 September / Macworld (1997-09).dmg / Serious Software / Cherwell Scientific Demos / pro Fit / pro Fit 5.0 demo (fpu).sea / pro Fit 5.0 demo (fpu) / Examples / Programming - intro / function - with derivatives < prev    next >
Text File  |  1996-04-15  |  1KB  |  34 lines

  1. {     The following function defines the hyperbolic sine.
  2.    It shows the use of the procedure Derivatives to calculate
  3.    the numerical derivatives of a function with respect to its
  4.    parameters (∂f/∂ai).
  5.    The definition of the procedure Derivatives is optional. It is only
  6.    used for fitting a function with the 'Nonlinear Fit' command.
  7.    If you don't want to define Derivatives, the values of ∂f/∂ai will
  8.    be calculated numerically. However, this will make fitting
  9.    slower. 
  10. }
  11.    
  12.  
  13.  
  14. function MySinh;
  15. var t: real;
  16.  
  17.   procedure Derivatives;
  18.     { This procedure returns the partial derivatives of the function
  19.       with respect to its parameters. In this example it returns
  20.       a value that was calculated in the main part of the function
  21.       to make its execution faster. This is possible because the main 
  22.       part is be called for each x-value before derivatives
  23.       is called.
  24.       However, if you don't want to use a temporary variable, you
  25.       just as well could write: dyda[1] := sinh(x). }
  26.   begin
  27.     dyda[1] := t;  { ∂f/∂a1 = sinh(x) }
  28.   end;
  29.  
  30. begin                       {the main part}
  31.   t := sinh(x);    {save sinh for derivatives}
  32.   y := a[1] * t;
  33. end;
  34.